#ifndef __FILE_COMMAND__
#define __FILE_COMMAND__
#include "head.h"

#include "fileStack.h"

// 存储全局变量
typedef struct file_path_s {
    char work_path[200];         // 工作路径
    char user_path[50];          // 用户名
    fileStack_t current_path_stack;   // 虚拟路径栈 - 需要初始化
} filePath_t;
int initFilePath(filePath_t* file_path,const char* work_path,const char* user_path);
// ---- 接口函数 ----
int lsCommand(filePath_t file_path);
int cdCommand(filePath_t file_path ,const char* path);
int removeCommand(filePath_t file_path , const char* path);
int pwdCommand(filePath_t file_path);
int mkdirCommand(filePath_t file_path , const char* path);
int removeCommand(filePath_t file_path , const char* path);
// ------------------

// 获取真实路径
int getRealPath(filePath_t file_path,char *realPath);
// 处理传入的相对路径
int doCurPathStack(filePath_t *file_path,const char* path);
// 判断目录是否为空
int isEmptyDir(const char* path);
#endif